package cloud.take.off.mybatis.base;


import java.util.HashMap;
import java.util.List;

public interface BaseFlowService {

    /**
     * 提交
     * @param id
     * @return
     */
    HashMap<String,Object> commit(String id);

    /**
     * 审批完成
     * @param id
     * @return
     */
    Boolean finish(String id);

    /**
     * 回退
     * @param id
     * @param formState
     * @param comment
     * @return
     */
    Boolean reject(String id, int formState, String comment);

    /**
     * 反审核
     * @param formId
     */
    void goBackToStash(String formId);

    /**
     * 根据单据ids获取流程用的字段
     * @param formIds
     * @return
     */
    List<PageData> findByIds(List<String> formIds);

    /**
     * 获取formType
     * @return
     */
    List<Integer> getFormType();

    default void rollBack(String id) {

    }
}
